package br.urca.validator;

import br.com.caelum.vraptor.observer.upload.UploadedFile;
import br.com.caelum.vraptor.validator.SimpleMessage;
import br.com.caelum.vraptor.validator.Validator;
import br.urca.controller.PerfilController;

public class PerfilValidator {
	
	public static void validate(UploadedFile foto, Validator validator) {
		
		if (foto != null) {
		
			String ext[] = foto.getFileName().split("\\.");
			long fileSizeInBytes = foto.getSize();
			long fileSizeInKB = fileSizeInBytes / 1024;
			long fileSizeInMB = fileSizeInKB / 1024; 
			int length = ext.length;
			validator.addIf(!ext[length-1].toUpperCase().equalsIgnoreCase("JPG") && !ext[length-1].equalsIgnoreCase("JPEG"),
					new SimpleMessage("Erro", "Tipo de arquivo inválido! "
							+ "Suportado somente arquivos \".JPG\" ou \".JPEG\"!"));
			
			validator.addIf(fileSizeInMB > 2, new SimpleMessage("Erro", "Arquivo maior que tamanho máximo permitido!"
					+ "O tamanho máximo é de 2 Megabytes."));
			
			validator.onErrorRedirectTo(PerfilController.class).index();
		}

	}

}
